//入口函数
$(function () {
    //需求1.获取用户信息渲染头像
    getUserInfo()

    //需求2 退出
    $('#logout').on('click', function () {
        //layui里面的询问框, 点击确定才会执行回调函数里面的代码
        layer.confirm('确认退出登录吗?', { icon: 3, title: '提示' }, function (index) {
            //do something
            // 删除token, 跳转到登录页
            localStorage.removeItem('token')
            location.href = '/login.html'
            // 自带代码, 关闭询问框
            layer.close(index);
        });
    })
})

//获取用户信息渲染头像封装成函数
//要求: 必须设置全局函数, 不能是局部函数
function getUserInfo() {
    axios({
        method: 'GET',
        url: '/my/userinfo',
        // headers要小写, 不能大写, 通过请求头设置token身份认证
        // headers: {
        //     Authorization: localStorage.getItem('token')
        // }
    }).then(function (res) {
        // console.log(res.data);
        // 判断
        if (res.data.status !== 0) {
            return layui.layer.msg(res.data.message)
        }
        // 渲染
        readerAvatar(res.data.data)
    })
}

// 渲染用户头像和信息
function readerAvatar(user) {
    // 渲染欢迎 , 如果有nickname优先渲染nickname, 没有就渲染username
    // || 连接两个值, 如果第一个值是false类型 则返回第二个值, 无论第二个值是什么类型
    // && 连接两个值, 如果第一个是false类型, 直接返回
    let name = user.nickname || user.username
    $('.welcome').html('欢迎&nbsp;' + name)
    //处理头像, 如果有图片头像渲染图片头像, 否则渲染文字头像
    if (user.user_pic !== null) {
        //处理头像, 如果有图片头像渲染图片头像 - 隐藏文字头像, 显示图片头像
        $('.layui-nav-img').show().attr('src', user.user_pic)
        $('.avatar-text').hide()
    } else {
        // 没有图片头像, 渲染文字头像, 隐藏图片头像
        $('.layui-nav-img').hide()
        // 渲染name中 的第一个但系并且大写
        let first = name[0].toUpperCase()
        $('.avatar-text').show().html(first)
    }
}